Make `cargo update` more conservative.
authorAlex Crichton <alex@alexcrichton.com>
Sun, 21 Sep 2014 21:27:30 +0000 (14:27 -0700)
committerAlex Crichton <alex@alexcrichton.com>
Sun, 21 Sep 2014 21:27:30 +0000 (14:27 -0700)
commitd1a332d19a6ae10ea84d9f99fb705276fcbffde3
tree3895f16231ddcbb53b7a386502bba9ea4ecdbf00
parent275c97c8b0da71337fd4d62d43986d560a385aca
Make `cargo update` more conservative.

As described in #613, this commit switches the semantics of `cargo update foo`
to updating *only* `foo`, not any of its dependencies. A new flag,
`--aggressive` was added to restore the old behavior.

The behavior of attempting to only unlock `foo`, and then if resolve fails
unlock all dependencies of `foo` is unimplemented as it's not super relevant
right now when the majority of dependencies are git dependencies and resolution
cannot fail for version-related reasons.

Closes #613
src/bin/update.rs
src/cargo/ops/cargo_generate_lockfile.rs
tests/test_cargo_compile_git_deps.rs